home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Varios Español
/
Varios Español.iso
/
NORTON8
/
EXEMPLES.BT!
/
SAMPLES.BTM
Wrap
Text File
|
1994-05-20
|
5KB
|
149 lines
@echo off
cls
echo %@upper[%0]:
text
Este archivo contiene varios ejemplos de archivos por lotes.
Le invitamos a que los estudie junto con la demás documentación
de NDOS. Quizá le interese imprimirlos (PRINT) u obtener un listado
(LIST) de su contenido y modificar las partes que desee. Los
distintos segmentos están separados por una línea discontinua,
por lo que puede extraer fácilmente el componente que más le
interese.
Se incluyen:
STATUS.BTM - Descripción resumida del sistema.
NMENU.BTM - Sencillísimo sistema de menús.
ONCEADAY.BTM - Ejecuta un comando la primera vez que se arranque
el ordenador en el día.
endtext
pause
: ---------------------------------------------------------------------
rem STATUS.BTM
rem
rem El siguiente archivo por lotes utilizará algunas de las
rem funciones variables internas de NDOS para describir
rem la configuración actual
rem
cls
echo.^echo.
echo Estado del sistema:
echo.
echo Fecha: %_dow %_date
echo Hora: %_time
echo Versión del NDOS: %_nver
echo OS: %_dos
echo Versión del DOS: %_dosver
echos `CPU: `
iff %_cpu == 86 then
echo 8088/8086
elseiff %_cpu == 186 then
echo 80188/80186
elseiff %_cpu == 200 then
echo V20/V30
elseiff %_cpu == 286 then
echo 80286
elseiff %_cpu == 386 then
echo 80386
elseiff %_cpu == 486 then
echo 80486
endiff
if %_ndp ne 0 echo %_ndp Detectado coprocesador matemático
echo Vídeo: %_video
echo Tipo de monitor: %_monitor
quit
: ---------------------------------------------------------------------
: NMENU.BTM
: El siguiente archivo por lotes creará un "menú" sencillo para
: ejecutar los programas de utilización más frecuente.
:
:Observe que, en lugar de sentencias REM, se crean etiquetas "inactivas"
:comenzando las líneas de comentario como ésta con dos puntos (":")
:
@echo off
: En primer lugar, después de guardar los alias existentes con el
: mismo nombre mediante el comando SETLOCAL, definimos dos alias que
: se utilizarán varias veces en el resto de este archivo.
setlocal
alias in `pushd %1 ^ %2& ^ popd`
alias choice `elseiff "%userchoice" == "%1" then`
:
: Se comienza con una pantalla vacía
cls
:dispmenu
: Sitúa el cursor
screen 8 0
: Muestra las opciones de menú
text
Seleccione una opción:
0. SALIR
1. Procesador de texto
2. Hoja de cálculo
3. Comunicaciones
endtext
: Pide al usuario que introduzca un valor para la variable de entorno
: CHOICE
inkey ¿Cuál? %%userchoice
: ¿Desea el usuario salir del menú?
iff "%userchoice" == "0" then ^ quit
: Comprueba las opciones válidas
: Cada línea corresponde a una opción de menú
: Los parámetros son el directorio al que ir y el programa que debe
: ejecutarse
choice 1 ^ in c:\cartas c:\ws\ws.exe
choice 2 ^ in d:\finanzas c:\quattro\q.exe
choice 3 ^ in c:\awremote c:\awremote\awremote.exe
else
: El usuario ha introducido una opción no válida
scrput 23 0 bri whi on red Opción no válida; vuelva a intentarlo
endiff
: Vuelve al principio
goto dispmenu
: ---------------------------------------------------------------------
: ONCEADAY.BTM
@echo off
:
: Este archivo por lotes ejecutará un comando la primera vez que
: se ejecute en el día después de las 6:00 de la mañana:
: DIARIO NDD C: /Q
:
: Observe que, en lugar de las sentencias REM, se crean etiquetas
: "inactivas" comenzando las líneas de comentarios como ésta con
: dos puntos (":")
:
: En primer lugar redefinimos la variable de entorno ULTIMA después
: de guardar el valor que SETLOCAL le pueda haber asignado
setlocal
set lastdate=0
: ¿Existe un archivo llamado DIARIO.DAT en el directorio
: raíz de la unidad de arranque?
iff exist %_boot:\diario.dat then
: En este caso, se da a LASTDATE el contenido de la primera línea
set lastdate=%@line[%_boot:\diario.dat,0]
endiff
: ¿La fecha del archivo es posterior a la de hoy?
: (la función @DATE convierte una fecha en un número entero)
iff %@date[%_date] gt %lastdate then
: Si este es el caso, ¿son más de las 6:00? (una hora arbitraria)
iff %time[%_time] gt %@time[06:00] then
: Sí. Ejecuta el comando introducido como argumento en este archivo
: archivo por lotes y regresa
call %&
: Después de ejecutar el comando, ponga la fecha de hoy con formato
: entero en el archivo DIARIO.DAT
echo %@date[%_today] >! %_boot:\diario.dat
endiff
endiff
: